package com.hanamaki.demo02;

import org.openqa.selenium.Alert;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.testng.annotations.AfterClass;
import org.testng.annotations.BeforeClass;
import org.testng.annotations.Test;

import java.net.MalformedURLException;
import java.util.Arrays;
import java.util.List;
import java.util.Set;

public class FireFoxDriverMoreWindow02 {

    WebDriver webDriver;

    @BeforeClass
    public void setup() {
        System.setProperty("webdriver.gecko.driver", "C:\\Program Files\\Mozilla Firefox\\geckodriver.exe");
        webDriver = new FirefoxDriver();
    }

    @Test
    public void test(){

        webDriver.get("file:///D:/SoftWare/apache-tomcat-9.0.56/webapps/testhtml/exam/index.html");
        /* 首先 将 刚刚打开的 网页中的 句柄 保存 并打印 */
        String windowHandle = webDriver.getWindowHandle();
        System.out.println(windowHandle);
        WebElement element = webDriver.findElement(By.xpath("//a"));
        element.click();

        /* 如果 操作 的  某一个 元素 在 新的标签中 打开  那么 需要使用 网页中的  句柄 */
        /* 1. 获得网页中 所有的句柄
           2. 集合转数组
        *  */
        Set<String> windowHandles = webDriver.getWindowHandles();
        System.out.println(windowHandles);
        Object[] objects = windowHandles.toArray();
        System.out.println(Arrays.toString(objects));

        webDriver.switchTo().window((String) objects[1]);

        WebElement c3 = webDriver.findElement(By.name("c3"));
        c3.click();

    }


    @AfterClass
    public void close() {
//        driver.close();
    }


}
